import { PatientInfoVO, PatientInfoForm, PatientInfoQuery } from "@/api/basicPublic/patientInfo/types";
import { Address } from "@/api/basicPublic/patientInfo/healthRecord/address";



export interface HealthRecordVO extends PatientInfoVO {

  /**
   * 是否孕产妇
   */
  isMaternal: string;

  /**
   * 是否儿童
   */
  isChildren: string;

  /**
   * 上次体检日期
   */
  lastInspectionDate: string;

  /**
   * 体检类型
   */
  inspectionType: string;

  /**
   * 体检情况
   */
  inspectionSituation: string;


  /**
   * 联系人
   */
  contact: string;

  /**
   * 联系人电话
   */
  contactPhone: string;

}

export interface contactPersonInfo {
  relation: string,
  name: string,
  phone: string,
}

export interface HealthRecordForm extends PatientInfoForm {
  documentationPeople?: string;
  contact?: string;
  contactPhone?: string;
  Residence1?: string[];
  Residence2?: string;
  Address1?: string[];
  Address2?: string;
  documentationUnit?: string | number;
  documentationUnitName?: string | number;
  queueInfo?: string[];
  contactPersonInfo?: contactPersonInfo[];
  contactPersonInfoRelation?: string;
  contactPersonInfoName?: string;
  contactPersonInfoPhone?: string;
  homePhone?: any;
  neighborhood?: any;
  otherPaper?: any;
  orgCode?: any;
  followupType?: any;
  followupNumber?: any;
  bp?: any;
  db?: any;
  fbg?: any;
  lastFollowupDate?: any;
  nextFollowupDate?: any;
  followupStatus?: any;
  lastSystemIdentificationDate?: any;
  lastInspectionDate?: any;
  inspectionType?: any;
  inspectionSituation?: any;
  deathTime?: any;
  deathCause?: any;
  deathCategory?: any;
  deathInstitutionalLevel?: any;
  deathDuration?: any;
  deathPlace?: any;
  deathHospital?: any;
  signDoctor?: any;
  signStatus?: any;
  signingDoctor?: any;
  currentResidentialAddress?: Address;
  diagnosis?: Address;
  identificationDate?: string;
  hypertensionFollowupInfo?: HypertensionFollowupInfo;
  diabetesFollowupInfo?: HypertensionFollowupInfo;
  lastFollowupStartDate?: any;
  lastFollowupEndDate?: any;
  diabetesFollowupNumber?: any;
  documentationTime?: any;
  currentManageInstitution?: any;// 当前管理单位
 
  
}


export interface HealthRecordQuery extends PatientInfoQuery {

  /**
   * 性别
   */
  gender?: string;
  sign?: string[],
  doctorCode?: string,
  maritalStatus?: string;

  inspectionType?: string;

  lastInspectionDate?: string;

  inspectionSituation?: any;

  documentationPeople?: any;

  patientId?: any;

  diagnosis?: string;

  deathTime?: string;


  queueInfo?: string[],

  identificationDate?: any,
  documentationTime?: any,
  homePhone?: any,
  hypertensionFollowupInfo?: HypertensionFollowupInfo,
  lastFollowupDate?: any;
  nextFollowupDate?: any;
  currentManageInstitution?:any;// 当前管理单位
  
  range?: any;// 范围
  agency?: any;// 单位
  documentation?: any;// 单位
  unanimous?: any;// 单位
  state?: any;// 单位
  institution?:any;// 单位
  hypertensionLastFollowupStartDate?: any;
  hypertensionLastFollowupEndDate?: any;
  hypertensionFollowupNumber?: any;
  hypertensionFollowupStatus?: any;
  hypertensionFollowupType?: any;


  diabetesFollowupType?: any;
  diabetesFollowupNumber?: any;
  diabetesLastFollowupStartDate?: any;
  diabetesLastFollowupEndDate?: any;
  diabetesNextFollowupDate?: any;
  diabetesFollowupStatus?: any;

  tuberculosisFollowupType?: any;
  tuberculosisFollowupNumber?: any;
  tuberculosisLastFollowupStartDate?: any;
  tuberculosisLastFollowupEndDate?: any;
  tuberculosisNextFollowupDate?: any;
  tuberculosisFollowupStatus?: any;

  psychiatricFollowupType?: any;
  psychiatricFollowupNumber?: any;
  psychiatricLastFollowupStartDate?: any;
  psychiatricLastFollowupEndDate?: any;
  psychiatricNextFollowupDate?: any;
  psychiatricFollowupStatus?: any;

  copdLastFollowupStartDate?: any;
  copdLastFollowupEndDate?: any;
  copdFollowupNumber?: any;
  copdFollowupStatus?: any;
  copdFollowupType?: any;


  isSystemIdentification?: any;
  orgCode?: any;
  isInspection?: any;
  year?: any;

}

export interface HypertensionFollowupInfo {
  followupNumber?: any,
  followupStatus?: any,
  followupType?: any,
  lastFollowupDate?: any,
  nextFollowupDate?: any,

  lastFollowupStartDate?: any,

  lastFollowupEndDate?: any,
}



